﻿using HCQ2_Model.APPModel.ParamModel;
using HCQ2_Model.APPModel.ResultApiModel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HCQ2_IBLL
{
    public partial interface IT_ClassBLL
    {
        //******************************************接口*******************************************
        /// <summary>
        ///  获取班级列表
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        List<ClassListResult> GetClassList(ClassListModel model,int userId);
        /// <summary>
        ///  获取关注班级列表
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        List<ClassListResult> GetFocusClassList(ClassListModel model, int userId);
        /// <summary>
        ///  获取体验时长排行榜
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        List<ExperienceRankList> GetExperienceRankList(ExperienceRankParam param, int userId);
        /// <summary>
        ///  获取体验正确率
        /// </summary>
        /// <param name="param"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        List<CorrectRateResult> GetCorrectRateList(ExperienceRankParam param, int userId);
        /// <summary>
        ///  获取单词出错次数统计
        /// </summary>
        /// <param name="param"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        List<WordErrorModel> GetWordErrorNumList(ExperienceRankParam param, int userId);
        /// <summary>
        ///  获取用户登录信息
        /// </summary>
        /// <param name="param"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        List<UserInfoByLoginModel> GetUserLoginInfo(ExperienceRankParam param, int userId);
        //最新
        /// <summary>
        ///  获取学生列表
        /// </summary>
        /// <param name="param"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        List<StudentInfoResult> GetStudentInfoList(StudentLoginModel param, int userId);
        /// <summary>
        ///  获取在线体验用户数量
        /// </summary>
        /// <param name="param"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        int GetOnLineNum(StudentLoginModel param, int userId);
    }
}
